package org.dtrd.modules.archive.entity.bean;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.io.Serializable;
import java.util.Date;

/**
 * @author QR
 * @since 2021-11-16
 */
@Data
@EqualsAndHashCode(callSuper = false)
@ApiModel(value="DtrdEntRdArchiveAnamnesisDTO对象", description="既往病史和过敏史")
public class AnamnesisDTO implements Serializable {


    private Integer dataId;

    @ApiModelProperty(value = "患者ID", required = true)
    private Integer patientId;

    @ApiModelProperty(value = "记录时间")
    private Date recordDate;

    @ApiModelProperty(value = "有无低血糖发生史")
    private Integer hypoglycemiaIsExist;

    @ApiModelProperty(value = "低血糖原因")
    private String hypoglycemiaCause;

    @ApiModelProperty(value = "低血糖原因其他")
    private String hypoglycemiaCauseOther;

    @ApiModelProperty(value = "低血糖症状有无")
    private Integer hypoglycemiaIfSymptom;

    @ApiModelProperty(value = "低血糖症状")
    private String hypoglycemiaSymptom;

    private String hypoglycemiaSymptomOther;

    @ApiModelProperty(value = "低血糖发生频率")
    private String hypoglycemiaFrequency;

    @ApiModelProperty(value = "有无糖尿病酮症酸中毒发生史")
    private Integer ketoacidosis;

    @ApiModelProperty(value = "糖尿病酮症酸中毒原因")
    private String ketoacidosisCause;

    @ApiModelProperty(value = "糖尿病酮症酸中毒原因其他")
    private String ketoacidosisCauseOther;

    @ApiModelProperty(value = "糖尿病酮症酸中毒程度")
    private Integer ketoacidosisDegree;

    @ApiModelProperty(value = "糖尿病酮症酸中毒发生频率")
    private String ketoacidosisFrequency;

    @ApiModelProperty(value = "糖尿病酮症酸中毒尿胴体检查")
    private Integer ketoacidosisUrineKetone;

    @ApiModelProperty(value = "糖尿病酮症酸中毒血胴体检查")
    private String ketoacidosisBloodKetone;

    @ApiModelProperty(value = "有无糖尿病高渗综合征发生史")
    private Integer dnhs;

    @ApiModelProperty(value = "糖尿病高渗综合征发生频率")
    private String dnhsFrequency;

    @ApiModelProperty(value = "有无糖尿病乳酸酸中毒发生史")
    private Integer lacticAcidosis;

    @ApiModelProperty(value = "糖尿病乳酸酸中毒发生频率")
    private String lacticAcidosisFrequency;

    @ApiModelProperty(value = "有无其他原因导致肾脏疾病")
    private Integer kidney;

    @ApiModelProperty(value = "所患肾脏疾病")
    private String kidneyDisease;

    @ApiModelProperty(value = "所患肾脏疾病其他")
    private String kidneyDiseaseOther;

    @ApiModelProperty(value = "所患肾脏疾病确诊日期")
    private Date kidneyDiseaseDate;

    @ApiModelProperty(value = "所患肾脏疾病相关检查")
    private String kidneyDiseaseChecks;

    @ApiModelProperty(value = "尿常规(尿蛋白)")
    private Integer kidneyPro;

    @ApiModelProperty(value = "尿白蛋白/尿肌酐（ACR）")
    private Float kidneyAcr;

    @ApiModelProperty(value = "所患肾脏疾病相关检查其他")
    private String kidneyDiseaseChecksOther;

    @ApiModelProperty(value = "血清肌酐（Cr）")
    private Float kidneyCr;

    @ApiModelProperty(value = "肾小球滤过率（GFR）")
    private Float kidneyGfr;

    @ApiModelProperty(value = "内生肌酐清除率")
    private Float kidneyCcr;

    @ApiModelProperty(value = "高血压")
    private Integer hbp;

    @ApiModelProperty(value = "是否服用降压药物, 1-是,2-否")
    private Integer hbpMedicine;

    @ApiModelProperty(value = "高血压确诊时间")
    private Date hbpDate;

    @ApiModelProperty(value = "高脂血症")
    private Integer hyperlipidemia;

    @ApiModelProperty(value = "高脂血症确诊日期")
    private Date hyperlipidemiaDate;

    @ApiModelProperty(value = "是否服用降脂药物")
    private Integer hyperlipidemiaIfMedicine;

    @ApiModelProperty(value = "高甘油三脂血症")
    private Integer hyperlipidemiaHypertriglyceridemia;

    @ApiModelProperty(value = "高胆固醇血症")
    private Integer hyperlipidemiaHypercholesterolemia;

    @ApiModelProperty(value = "心血管疾病")
    private Integer cardiovascularDiseases;

    @ApiModelProperty(value = "确诊日期")
    private Date cardiovascularDiseasesDate;

    @ApiModelProperty(value = "冠心病类型")
    private String coronaryHeartDisease;

    @ApiModelProperty(value = "冠心病类型其他")
    private String coronaryHeartDiseaseOther;

    @ApiModelProperty(value = "心绞痛")
    private String anginaPectoris;

    @ApiModelProperty(value = "心机梗死")
    private Integer myocardialInfarction;

    @ApiModelProperty(value = "心机梗死描述")
    private String myocardialInfarctionOther;

    @ApiModelProperty(value = "心功能不全")
    private Integer heartFailure;

    @ApiModelProperty(value = "心血管疾病相关检查")
    private String cardiovascularDiseasesChecks;

    @ApiModelProperty(value = "心血管疾病其他")
    private String cardiovascularDiseasesOther;

    @ApiModelProperty(value = "脑血管疾病")
    private Integer cerebrovascularDisease;

    @ApiModelProperty(value = "脑血管疾病确诊时间")
    private Date cerebrovascularDiseaseDate;

    @ApiModelProperty(value = "脑卒中")
    private Integer stroke;

    @ApiModelProperty(value = "脑卒其他症状")
    private String strokeOther;

    @ApiModelProperty(value = "急性脑缺血")
    private Integer acuteCerebralIschemia;

    @ApiModelProperty(value = "短暂性脑缺血发作")
    private Integer transientIschemicAttack;

    @ApiModelProperty(value = "动脉粥样硬化性CCVD")
    private Integer atheroscleroticCcvd;

    @ApiModelProperty(value = "脑血管疾病相关检查")
    private String cerebrovascularDiseaseChecks;

    @ApiModelProperty(value = "脑血管疾病其他")
    private String cerebrovascularDiseaseOther;

    @ApiModelProperty(value = "周围血管疾病")
    private Integer peripheralVascularDisease;

    @ApiModelProperty(value = "周围血管疾病确认日期")
    private Date peripheralVascularDiseaseDate;

    @ApiModelProperty(value = "所患周围血管疾病")
    private String peripheralVascularDiseases;

    @ApiModelProperty(value = "肝衰竭")
    private Integer hepaticFailure;

    @ApiModelProperty(value = "恶性肿瘤")
    private Integer malignantTumor;

    @ApiModelProperty(value = "恶性肿瘤预期寿命")
    private Integer malignantTumorLife;

    @ApiModelProperty(value = "癫痫")
    private Integer epilepsy;

    @ApiModelProperty(value = "青光眼")
    private Integer glaucoma;

    @ApiModelProperty(value = "白内障")
    private Integer cataract;

    @ApiModelProperty(value = "白内障术后")
    private Integer cataractAfterOperation;

    @ApiModelProperty(value = "多囊卵巢综合征")
    private Integer pcos;

    @ApiModelProperty(value = "一过性类固醇性糖尿病")
    private Integer steroidDiabetes;

    @ApiModelProperty(value = "败血症")
    private Integer septicemia;

    @ApiModelProperty(value = "血栓栓塞一年内")
    private Integer thromboembolism;

    @ApiModelProperty(value = "血栓形成一年内")
    private Integer thrombosis;

    @ApiModelProperty(value = "慢性肝病")
    private Integer chronicLiver;

    @ApiModelProperty(value = "脾切除")
    private Integer splenectomy;

    @ApiModelProperty(value = "老年痴呆")
    private Integer senileDementia;

    @ApiModelProperty(value = "精神障碍")
    private Integer mentalDisorder;

    @ApiModelProperty(value = "智力障碍")
    private Integer mentalRetardation;

    @ApiModelProperty(value = "视力障碍")
    private Integer visualImpairment;

    @ApiModelProperty(value = "截肢")
    private Integer amputation;

    @ApiModelProperty(value = "有无药物过敏史")
    private Integer allergy;

    @ApiModelProperty(value = "阿司匹林过敏")
    private Integer allergyAspirin;

    @ApiModelProperty(value = "水杨酸过敏")
    private Integer allergySalicylic;

    @ApiModelProperty(value = "他汀类药物过敏")
    private Integer allergyStatins;

    @ApiModelProperty(value = "其他过敏")
    private String allergyOther;

    @ApiModelProperty(value = "药物过敏史多选备用")
    private String drugAllergy;

    @ApiModelProperty(value = "巨大婴儿生产史")
    private Integer giantBabyProduction;

    @ApiModelProperty(value = "妊娠期显性糖尿病史")
    private Integer dominantGestationalDiabetes;

    @ApiModelProperty(value = "早发性心血管疾病家族史")
    private Integer familyEarlyOnsetCardiovascular;

    @ApiModelProperty(value = "2型糖尿病家族史")
    private Integer familyDiabetes2;

    @ApiModelProperty(value = "既往病史")
    private String medicalHistory;

    @ApiModelProperty(value = "过敏史")
    private String allergyHistory;

    /**
     * 低血糖发生史是否确认完成, 1-是, 0-否
     */
    @ApiModelProperty("hypoglycemia_is_finished")
    private Integer hypoglycemiaIsFinished;

    /**
     * 糖尿病酮症酸中毒发生史是否确认完成, 1-是, 0-否
     */
    @ApiModelProperty("ketosis_is_finished")
    private Integer ketosisIsFinished;

    /**
     * 糖尿病高渗综合征发生史是否确认完成, 1-是, 0-否
     */
    @ApiModelProperty("hypertonic_is_finished")
    private Integer hypertonicIsFinished;

    /**
     * 糖尿病乳酸酸中毒发生史是否确认完成, 1-是, 0-否
     */
    @ApiModelProperty("lactic_acidosis_is_finished")
    private Integer lacticAcidosisIsFinished;

    /**
     * 其他原因导致肾脏疾病是否确认完成, 1-是, 0-否
     */
    @ApiModelProperty("kidney_is_finished")
    private Integer kidneyIsFinished;

    /**
     * 其他病史是否确认完成, 1-是, 0-否
     */
    @ApiModelProperty("other_is_finished")
    private Integer otherIsFinished;

    /**
     * 痛风史是否确认完成, 1-是, 0-否
     */
    @ApiModelProperty("gout_is_finished")
    private Integer goutIsFinished;

    /**
     * 痛风史
     */
    @ApiModelProperty("gout")
    private Integer gout;

    /**
     * 痛风史情况
     */
    @ApiModelProperty("gout_cur_status")
    private Integer goutCurStatus;

    /**
     * 血尿酸
     */
    @ApiModelProperty("gout_bua")
    private Float goutBua;

}
